]> git.r.bdr.sh - rbdr/super-polarity/blobdiff - Super Polarity/GameScreen.cs
I have the worst commits ever.
[rbdr/super-polarity] / Super Polarity / GameScreen.cs
diff --git a/Super Polarity/GameScreen.cs b/Super Polarity/GameScreen.cs
new file mode 100644 (file)
index 0000000..4404b16
--- /dev/null
@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using Microsoft.Xna.Framework;
+using Microsoft.Xna.Framework.Graphics;
+using Microsoft.Xna.Framework.Input;
+
+namespace SuperPolarity
+{
+    class GameScreen : Screen
+    {
+        public GameScreen(SuperPolarity newGame) : base(newGame) {}
+
+        public override void Initialize()
+        {
+            InputController.RegisterEventForButton("changePolarity", Buttons.A);
+            InputController.RegisterEventForKey("changePolarity", Keys.Z);
+
+            InputController.RegisterEventForButton("shoot", Buttons.X);
+            InputController.RegisterEventForKey("shoot", Keys.X);
+        }
+
+        public override void LoadContent()
+        {
+            Vector2 playerPosition = new Vector2(Game.GraphicsDevice.Viewport.TitleSafeArea.X, Game.GraphicsDevice.Viewport.TitleSafeArea.Y + Game.GraphicsDevice.Viewport.TitleSafeArea.Height / 2);
+
+            Renderer.CheckIn(ActorFactory.CreateMainShip(playerPosition));
+            Renderer.CheckIn(ActorFactory.CreateShip(Ship.Polarity.Positive, new Vector2(200, 200)));
+            Renderer.CheckIn(ActorFactory.CreateShip(Ship.Polarity.Negative, new Vector2(400, 200)));
+        }
+
+        public override void Update(GameTime gameTime)
+        {
+            InputController.UpdateInput();
+            ActorManager.Update(gameTime);
+        }
+
+        public override void Draw(SpriteBatch spriteBatch)
+        {
+            Renderer.Draw(spriteBatch);
+        }
+    }
+}